var ShortURL ={
	query:function(){
		ShortURL.reload();
	},
	del:function(ids){
		if(ids == null){
			return;
		}
		confirm('确定要删除选中的记录？', function(){
			$.ajax({
				type: "POST",
				url: "remove",
			    data: {
					ids:ids
				},
			    success: function(r){
					if(r.success){
						alert('操作成功', function(index){
							$("#jqGrid").trigger("reloadGrid");
						});
					}else{
						alert(r.msg);
					}
				}
			});
		});
	},
	refresh:function(){
		$("#jqGrid").trigger("reloadGrid");
	},
	reload: function () {
		var keyword = $("#keyword").val();
		var filterTime = $('#filterTime').val();
		var page = $("#jqGrid").jqGrid('getGridParam','page');
		$("#jqGrid").jqGrid('setGridParam',{
			postData:{
					'url': keyword,
					'dwz': keyword,
					'filterTime': filterTime
				},
			page:page
		}).trigger("reloadGrid");
	},
	formatter: function(cellvalue, options, rowObject){
		if(typeof cellvalue != undefined && cellvalue){
			return '<a href="'+ cellvalue +'" target="_blank">'+ cellvalue +'</a>';
		}
		return cellvalue;
	}
};
$(function () {
	// 过滤时间
	$('#filterTime').daterangepicker({
		autoUpdateInput:false,//初始值为空
        autoApply:false,
        singleDatePicker:false,
        showDropdowns:false,        // 是否显示年月选择条件
		timePicker: true, 			// 是否显示小时和分钟选择条件
		timePickerIncrement: 10, 	// 时间的增量，单位为分钟
        timePicker24Hour : true,
        opens : 'left', //日期选择框的弹出位置
		ranges: {
			'最近1小时': [moment().subtract(1, 'hours'), moment()],
			'今日': [moment().startOf('day'), moment().endOf('day')],
			'昨日': [moment().subtract(1, 'days').startOf('day'), moment().subtract(1, 'days').endOf('day')],
			'最近7日': [moment().subtract(6, 'days'), moment()],
			'最近30日': [moment().subtract(29, 'days'), moment()],
			'本月': [moment().startOf('month'), moment().endOf('month')],
			'上个月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')],
			'三个月前': [moment().subtract(3, 'month').startOf('month'), moment()],
			'半年前': [moment().subtract(6, 'month').startOf('month'), moment()],
			'一年前': [moment().subtract(12, 'month').startOf('month'), moment()]
		},
        locale : {
            format: 'YYYY-MM-DD HH:mm:ss',
            separator : ' 至 ',
        	customRangeLabel : '自定义',
            applyLabel : '确定',
            cancelLabel : '取消',
            fromLabel : '起始时间',
            toLabel : '结束时间',
            daysOfWeek : [ '日', '一', '二', '三', '四', '五', '六' ],
            monthNames : [ '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月' ],
            firstDay : 1
        },
//        startDate: moment().subtract(12, 'month').startOf('month'),
//        endDate: moment()
	});
	
    $("#jqGrid").jqGrid({
        url: 'page-list',
        datatype: "json",
        colModel: [			
			{ label: 'ID', name: 'id', index: 'id', width: 30, key: true, hidden:true},
			{ label: '短网址', name: 'dwz', width: 50,formatter:ShortURL.formatter}, 		
			{ label: '原始网址', name: 'url', index: 'url', width: 300,formatter:ShortURL.formatter }, 			
			{ label: '最后使用时间', name: 'lastUsedTime', index: 'lastUsedTime', width: 50 }, 			
			{ label: '创建时间', name: 'createTime', index: 'createTime', width: 50 }, 			
			{ label: '失效时间', name: 'expireTime', index: 'expireTime', width: 50 }			
        ],
		viewrecords: true,
        height: 600,
        rowNum: 10,
		rowList : [10,30,50],
        rownumbers: true, 
        rownumWidth: 25, 
        autowidth:true,
        multiselect: true,
        pager: "#jqGridPager",
        jsonReader : {
            root: "list",
            page: "currPage",
            total: "totalPage",
            records: "totalCount"
        },
        prmNames : {
            page:"page", 
            rows:"limit", 
            order: "order"
        },
        styleUI : "Bootstrap",
        gridComplete:function(){
        	//隐藏grid底部滚动条
        	$("#jqGrid").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); 
        },
        beforeSelectRow: function(rowId, e) { 
        	if($(e.target).is("input[type='checkbox']") && $(e.target).prop("checked")){
        		$(e.target).parent().parent().addClass("success");
        		$("#jqGrid").getGridParam("selarrrow").push(rowId);
        		return true; 
        	}else if($(e.target).is("input[type='checkbox']") && !$(e.target).prop("checked")){
        		$(e.target).parent().parent().removeClass("success");
        		removeByValue($("#jqGrid").getGridParam("selarrrow"),rowId);
        		return true; 
        	}
        	return true; 
        },
    });
});
